package com.zzl.bonds.ticket.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zzl.bonds.ticket.dto.TickefinanceDataAddDto;
import com.zzl.bonds.ticket.dto.TickefinanceDataUpdateDto;
import com.zzl.bonds.ticket.dto.TicketFinanceDataTypeDto;
import com.zzl.bonds.ticket.entity.TicketFinanceDataEntity;
import com.zzl.general.common.exception.SysException;
import com.zzl.general.common.serurity.entity.User;
import com.zzl.general.common.utils.PageUtils;

import java.util.List;
import java.util.Map;

/**
 * 融资资料表
 *
 * @author gull
 * @date 2022-07-06 13:43:52
 */
@SuppressWarnings("javadoc")
public interface TicketFinanceDataService extends IService<TicketFinanceDataEntity> {

    /**
     * 分页查询
     *
     * @param params 查询参数
     * @return 分页数据
     */
    PageUtils queryPage(Map<String, Object> params);

    /**
     * 新增
     *
     * @param tickefinanceDataAddDto 新增实体
     * @param user                   当前登录用户
     * @throws SysException 业务异常
     */
    void saveTickefinanceData(TickefinanceDataAddDto tickefinanceDataAddDto, User user) throws SysException;

    /**
     * 修改
     *
     * @param tickefinanceDataUpdateDto 修改实体
     * @param user                      当前登录用户
     * @throws SysException 业务异常
     */
    void updateTickefinanceDataById(TickefinanceDataUpdateDto tickefinanceDataUpdateDto, User user) throws SysException;

    /**
     * 融资补充资料保存
     *
     * @param financeDataDtoList 融资资料
     * @param id                 融资申请id
     * @param user               用户
     */
    void saveTicketBatchfinanceData(List<TicketFinanceDataTypeDto> financeDataDtoList, String id, User user);
}

